#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QStringList>
#include <QFutureWatcher>
#include <QPixmap>
#include <QAtomicInt>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    void on_selectImagesBtn_clicked();
    void on_processImagesBtn_clicked();
    void onProcessingFinished();

private:
    Ui::MainWindow *ui;
    QStringList m_imagePaths;
    QFutureWatcher<void> m_futureWatcher;
    QAtomicInt m_processedCount;

    // 处理单个图片的函数
    void processImage(const QString &imagePath);
    
    // 更新进度
    void updateProgress();
};
#endif // MAINWINDOW_H
